home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / pascal / tpmul221.zip / MULAWARE.DOC < prev    next >
Text File  |  1992-03-02  |  8KB  |  296 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.                      MulAware (MultiTasker Aware) 2.21
  17.  
  18.             Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  19.  
  20.                      Designed & Written by Jack Ridgway
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.                                   Page 1
  58.  
  59.      MulAware 2.21 Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.    DISCLAIMER
  67.  
  68.      Users of MulAware must accept this disclaimer of warranty:
  69.      "MulAware is supplied as is.  The author disclaims all warranties,
  70.      expressed or implied, including, without limitation, the warranties
  71.      of merchantability and of fitness for any purpose.  The author
  72.      assumes no liability for damages, direct or consequential, which
  73.      may result from the use of MulAware."
  74.  
  75.  
  76.    FREEWARE AGREEMENT
  77.  
  78.      MulAware is a "freeware program" and is provided at no charge to
  79.      the user.  Feel free to share it with your friends, but please do
  80.      not give it away altered or as part of another system.  Anyone
  81.      distributing MulAware for any kind of remuneration must first
  82.      contact A.B.S. at the address listed below for authorization.
  83.      This authorization will be automatically granted to distributors
  84.      recognized by the (ASP) as adhering to its guidelines for
  85.      shareware distributors, and such distributors may begin offering
  86.      MulAware immediately; however, A.B.S. must still be advised so that
  87.      the distributor can be kept up-to-date with the latest version of
  88.      MulAware.
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.                                   Page 2
  117.  
  118.      MulAware 2.21 Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.    WHAT IS MulAware?
  126.  
  127.      MulAware is a Turbo Pascal 6.0 Unit to make your programs fully
  128.      MultiTasker Aware.  MulAware currently supports the following
  129.      multitaskers:
  130.  
  131.      Windows 386 2.xx
  132.      Windows 3.0 in 386enh mode
  133.      DESQview 2.26+
  134.      DoubleDOS
  135.      TaskView, TopView, OmniView, & clones
  136.  
  137.      VMiX, and possibly others, will be added in the future.
  138.  
  139.      MulAware is 90% Assembler Code, and is very efficient and fast.
  140.      
  141.  
  142.    HOW TO USE MulAware
  143.  
  144.      Since this is a programmer's tool, I'm going to assume you have
  145.      decent knowledge of computers in general, and Turbo Pascal in
  146.      particular.  Simply place MulAware in your USES statement.
  147.  
  148.      USES
  149.        Crt,
  150.        MulAware,
  151.        Dos;
  152.  
  153.  
  154.    PROCEDURES & FUNCTIONS
  155.  
  156.      See the enclosed MULAWARE.INT for correct calling procedures.
  157.  
  158.      MulAware defines 5 typed boolean constants, and contains 4 procedures
  159.      and 3 functions.
  160.  
  161.      The constants are:
  162.      MultiTasker - True if any multitasker is present
  163.      DV_Loaded   - True if DESQview loaded
  164.      TV_Loaded   - True if TopView or Compatible loaded
  165.      DDOS_Loaded - True if DoubleDOS loaded
  166.      WIN_Loaded  - True if Windows 3.0 386enh or Windows 386 2.xx loaded
  167.  
  168.      They are all initialized to False, and checked in the order listed;
  169.      therefore, although DESQview is TopView compatible, if DV is present,
  170.      TV_Loaded will be false.  MultiTasker is initialized to true, and
  171.      is set to false if MulAware is unable to detect one of the supported
  172.      multitaskers.
  173.  
  174.  
  175.                                   Page 3
  176.  
  177.      MulAware 2.21 Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.      The procedures are:
  185.  
  186.      TimeSlice
  187.        Causes the current task to give up the rest of its time slice.
  188.        Useful in loops while waiting for keyboard input.  This procedure
  189.        is valid for all, and has no effect if a multitasker is not
  190.        present.
  191.  
  192.      PreventSwitching
  193.        Suspends multitasking and only services the current task.
  194.        Useful during critical program functions.  This procedure is
  195.        valid for all, and has no effect if a multitasker is not present.
  196.  
  197.      ResumeSwitching
  198.        Called to resume multitasking after it has been suspended by
  199.        PreventSwitching. This procedure is valid for all, and has no
  200.        effect if a multitasker is not present.
  201.  
  202.      TV_UpdateBuffer(Num : Word; Buffer, CharOffset : Word)
  203.        Must be called when running under TaskView or clones to update
  204.        the screen from the virtual buffer.  This may be called under
  205.        DESQview, but doing so will cause DESQview to stop updating the
  206.        screen automatically.  Num contains the number of sequential
  207.        characters that were changed.  Buffer:CharOffset points to the
  208.        first character changed.  This procedure could crash the machine
  209.        if called when TV_Loaded and DV_Loaded are both False!
  210.  
  211.      The functions are:
  212.  
  213.      VirtualBuffer : Word
  214.        Returns the address of the virtual video buffer.
  215.        Useful for doing direct screen writes without 'bleed through'.
  216.        This function is valid for DESQview and TopView.
  217.        For DoubleDOS, this procedure must be called everytime you wish
  218.        to do a direct write, because the buffer changes.
  219.        Under Windows, or when no multitasker is present, this returns 0.
  220.  
  221.      DDOS_Visible : Boolean
  222.        Returns true if the current task is the visible task under DoubleDOS.
  223.        Returns false if DDOS NOT running OR if the current task is the
  224.        invisible task.  You must check DDOS_Loaded if a false is returned.
  225.  
  226.      MulVersion : Word
  227.        Returns the version number for DESQview 2.26+, TopView, Windows
  228.        (200 for 2.xx), 0 for all others or no multitasker present,
  229.        & unknown for OmniView.
  230.  
  231.  
  232.  
  233.  
  234.                                   Page 4
  235.  
  236.      MulAware 2.21 Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.    REGISTRATION
  244.  
  245.      MulAware is distributed as FreeWare.  This is a contribution to all
  246.      the shareware/freeware/pd programmers, to whom I certainly owe a
  247.      lot.  Please read the DISCLAIMER & FREEWARE AGREEMENT earlier in
  248.      the documentation for more information.
  249.  
  250.      Fully commented source code for MulAware is available for $50.
  251.      This includes a royalty free license agreement and one year of
  252.      free upgrades.
  253.  
  254.      ABSMulti is a commercial product also available from A.B.S.
  255.      ABSMulti is a SUPERSET of the routines contained in MulAware. It
  256.      contains most of the DESQview, TopView, and DoubleDOS APIs, as
  257.      well as all Windows functions accessible from a DOS program.
  258.      ABSMulti is $99, and it comes with fully commented source code,
  259.      a royalty free license agreement, documentation, and one year of
  260.      free upgrades.
  261.  
  262.  
  263.    TECHNICAL SUPPORT
  264.  
  265.      A.B.S.
  266.      P.O. Box 55647
  267.      Jackson, MS 39296-5647
  268.      601-362-4071  9am-6pm CST
  269.  
  270.      The Big Bang Theory BBS
  271.      SysOp: Jack Ridgway
  272.      601-366-1664
  273.      USR Dual Standard
  274.  
  275.      CIS - 70740,450
  276.      GEnie - J.RIDGWAY4
  277.      SL_Net - 250:302/532
  278.      FidoNet - 1:3632/104
  279.  
  280.  
  281.    ACKNOWLEDGMENTS
  282.  
  283.      * Turbo Pascal is a registered trademark of Borland International
  284.      * MS-DOS is a registered trademark of Microsoft Corporation
  285.      * DESQview is a registered trademark of Quarterdeck Office Systems
  286.      * VMiX is a registered trademark of Commercial Software Associates
  287.      * Windows is a registered trademark of Microsoft Corporation
  288.      * All other programs are (c) and/or (tm) by their respective
  289.        author unless otherwise noted
  290.  
  291.  
  292.  
  293.                                   Page 5
  294.  
  295.      MulAware 2.21 Copyright (c) 1991,1992 A.B.S. - ALL RIGHTS RESERVED
  296.